// 作者:于大明

//------------------------------mock数据引入---------------------------
import yytTest from './yyt-test_mock.js';

//-------------------------Service引入----------------------------------
// import CY17 from '@/service/CY/CY17AppService.js';

//--------------------------核心规范-------------------------------------
//1 能不能在页面单行代码实现
//2 能不能不用data methods去实现这个功能
//3 以最少的代码实现功能(需要封装除外)
//4 相同代码一定更要封装 区分职责关系 

export default {
	name: 'yyt-test',
	// 注册属性
	props: {
		inputItems: {
			type: Array,
			require: false,
			default: () => [{}],
		},
	},
	// 组件创建生命周期 这个时候 vue对象已经创建好 可以访问data和method数据
	created() {
		uni.$u.vuex('vuex_test.name', this.$moment().format('HH:mm:ss'));
		var m = this.vuex_test;
	},
	// 负责程序中需要进行set的数据 就是页面交互需要改的数据 比如点击checkbox 需要设置true false 和存放ajax的输入输出 (尽量少去定义data里面的属性 多用computed或者组件进行处理) 
	//1 能不能在页面单行代码实现
	//2 能不能不用data methods去实现这个功能
	data() {
		return {
			//---------------------接口输入输出 接口名称+in/out 命名 列如接口名称是getStudentList----------------------
			//getStudentListIn: {
			//    pageIndex: 1, // 第几页
			//    pageSize: 5, // 每页多少条
			//    sarchValue: '', // 查询条件  目前是根据学生姓名和班级姓名查找
			//    isAppend: true // 控制是滚动底部刷新 还是上拉加载
			//},
			//// 列表数据参数 对应 demoIndexMock.getStudentListOut
			//getStudentListOut: {
			//    dataList: [], // 返回的data数据
			//    pageCount: 0, // 多少页
			//    rowCount: 0 // 总共多少数据
			//},

			//-----------------------------页面参数------------------------
			title: {},
		};
	},
	// 负责和页面事件进行交互
	methods: {
		// 注册事件 注意 暴露给外面的事件 以_on开头 里面的事件不用
		_onClick() {
			this.$emit('onClick'); // 事件尽量用on开头
		},
	},
	// 不要set的数据 统一用computed实现(能用computed 实现的 尽量用他实现 不要用data和method处理) 有返回值的method 也统一用computed实现
	computed: {
		items() {
			return this.$_.cloneDeep(this.inputItems);
		},
	},
	// 负责格式化数据
	filters: {
		// 多个参数filter 调用  {{day|weekDayFmt(getStudentListIn.month)}} filter filter后缀加上Fmt
		//weekDayFmt(day, yearMonth) {
		//    var weekDay = moment(yearMonth + "-" + day).day();
		//    var weekObj = { 1: "一", 2: "二", 3: "三", 4: "四", 5: "五", 6: "六", 0: "日" };
		//    return weekObj[weekDay];
		//},
	},
	// 负责数据变化后需要和接口交互
	watch: {
		// "currentStore.storeId": {
		//    handler(val, oldval) {
		//        if (val) {
		//        }
		//    }
		// }
	},
};
